package org.erp.spu.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.erp.spu.entity.SpuModelAttribute;
import org.erp.spu.entity.vo.SpuAttrExcelVo;
import org.erp.spu.entity.vo.SpuModelAttrParentVo;
import org.erp.spu.entity.vo.SpuModelAttributeVo;

import java.util.List;

@Mapper
public interface SpuModelAttributeMapper extends BaseMapper<SpuModelAttribute> {


    List<SpuModelAttrParentVo> getListByModelId(@Param("modelId") Long modelId);

    /**
     * 分页获取全量属性值（按分类ID）
     * 说明：为大数据量导出提供分页查询，避免一次性加载全部数据到内存。
     *
     * @param categoryId 分类ID
     * @param offset     起始偏移量（(page-1)*pageSize）
     * @param limit      每页条数
     * @return 当前页数据
     */
    List<SpuAttrExcelVo> getSpuAllExportListByCategoryIdByPage(@Param("categoryId") Long categoryId,
                                                                @Param("offset") Long offset,
                                                                @Param("limit") Integer limit);
}
